#include <bits/stdc++.h>
using namespace std;
inline void branch(int u, int v) { cout << u << ' ' << v << '\n'; }
int main() {
  int n, d, h;
  cin >> n >> d >> h;
  if (n == 2) {
    if (d == 1 && h == 1) {
      cout << "1 2\n";
    } else {
      cout << "-1\n";
    }
    return 0;
  }

  if (d > h) {
    if (d > 2 * h) {
      cout << "-1\n";
      return 0;
    }

    for (int rt = 1, i = 2; i <= h + 1; rt = i, ++i) {
      branch(rt, i);
    }
    for (int rt = 1, i = h + 2; i <= d + 1; rt = i, ++i) {
      branch(rt, i);
    }
    for (int i = d + 2; i <= n; ++i) {
      branch(1, i);
    }
  } else {  // d == h
    if (d == 1) {
      cout << "-1\n";
      return 0;
    }
    for (int rt = 1, i = 2; i <= h + 1; rt = i, ++i) {
      branch(rt, i);
    }
    for (int i = d + 2; i <= n; ++i) {
      branch(2, i);
    }
  }
}
